-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migrate existing vscode UI tests to cypress #2590
Open
sagerb
wants to merge
10
commits into
main
Choose a base branch
from
sagerb-migrate-existing-vscode-ui-tests-to-cypress
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…lity to load and save config file, even in cases of TOML parsing errors.
…itch to new toml package and wildcard expansion to open specific files.
…ssing R on code server docker image
marcosnav
approved these changes
Feb 21, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great 🚀
7 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Intent
This PR updates the infrastructure of the e2e testing facility while adding tests that mimic the existing coverage of the tests within
test/vscode
.Resolves #2586
When this PR is merged, we can then merge in #2584, which will remove the old tests, which then will unblock #2569 and various other PRs which are failing CI.
Type of Change
Approach
As outlined within the related issue, there were a few tests implemented within the
test/vscode
project that needed to be replicated. These fell into a few buckets:User Impact
No impact to users - this affects internal testing only.
Automated Tests
All the changes are related to automated tests.
Directions for Reviewers
Because of the addition of several projects into the testing content workspace, a review of the changes by walking through the commits individually is recommended.
You will see that I have extended the functionality available within the Cypress commands. The tests required both reading and writing of the config files, while also accepting errors to be present. To handle this, I have swapped out the
toml
library for a newer library (smol-toml
) and have implemented reading & writing, as well as wildcard expansion for the toml files. I have also implemented a generic sequence that I've used to automate the creation of a deployment and publishing of the deployment.I noticed that we are unable to automate the deployment of any non-python or static project, since the docker image used to host the VSCode server (and its related workspace environment), does not have a good way to install versions of R and Quarto into it. Without those interpreters being available for the publisher, it is impossible to create projects of the related content types. This has been captured within issue #2589, which will then open up our ability to implement automated deployments for all of the supported content types.
Checklist